package cn.fl.customer.controller;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cn.fl.customer.service.IPrjBillApplyService;
import cn.fl.project.service.IPrjBscInfoService;
import cn.fl.project.vo.PrjBscInfoVO;
import com.alibaba.fastjson.JSON;
import fl.customer.facade.invoice.constant.PrjBillApplyConstant;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

import cmm.mid.core.framework.page.KeyValueVO;
import cmm.web.core.framework.controller.BaseController;
import cn.cmm.base.framework.utils.BaseLogUtils;
import cn.cmm.base.framework.utils.CollectionUtils;
import cn.cmm.base.framework.utils.StringUtils;
import cn.cmm.cache.framework.utils.PropertiesCacheUtils;
import cn.fl.customer.service.ICstBscInfoService;
import cn.fl.customer.vo.CstBscInfoVO;
import cn.fl.framework.base.context.CurrentThreadContext;
import cn.fl.framework.constant.DictionaryConstant;
import cn.fl.system.service.ISysDictionaryService;
import fl.customer.facade.customer.constant.CustomerConstant;
import net.sf.json.JSONArray;
/**
 * @Description: 客户外部调用页面控制层
 */
@Controller
@RequestMapping("/customer/external")
public class CstExternalController extends BaseController {

	private static final Logger logger = LoggerFactory.getLogger(CstExternalController.class);
	
	/**
	 * 客户基本信息服务
	 */
	@Autowired
	private ICstBscInfoService cstBscInfoService;
	
	/**
	 * 数据字典服务
	 */
	@Autowired
	private ISysDictionaryService sysDictionaryService;

	@Autowired
    private IPrjBscInfoService prjBscInfoService;

	@Autowired
    private IPrjBillApplyService prjBillApplyService;

	/**
	 * 1、到客户详细页面(项目担保人明细使用)
	 * 2、根据参数ID区分是法人还是自然人跳转不同的详情页面
	 */
	@RequestMapping(value = "/toCstDetailForPrjGuarCreditPage.do", method = { RequestMethod.GET})
	public ModelAndView toCustCstBacInfoCorpDetailPage(HttpServletRequest request, HttpServletResponse response) {
		String id = request.getParameter("id");
		String url = "";
		try {
			CstBscInfoVO cstBscInfoVO = this.cstBscInfoService.selectById(Long.valueOf(id));
			if(null != cstBscInfoVO){
				if(CustomerConstant.CST_TYP_CD_NP.equals(cstBscInfoVO.getCstTypCd())){
					url = "customer/cstexternal/cstNpDetailForPrjGuarCredit";
				}else if(CustomerConstant.CST_TYP_CD_CORP.equals(cstBscInfoVO.getCstTypCd())){
					url = "customer/cstexternal/cstCorpDetailForPrjGuarCredit";
				}
			}
		} catch (Exception e) {
			BaseLogUtils.error(logger, "toCstDetailForPrjGuarCreditPage", "跳转到客户详情页面错误. ID:" + id + " ERROR:" + e.getMessage(), CurrentThreadContext.getCurrentUserName());
		}
		ModelAndView view = new ModelAndView(url);
		BaseLogUtils.info(logger, "toCstDetailForPrjGuarCreditPage", "跳转到客户详情页面. ID:" + id, CurrentThreadContext.getCurrentUserName());
		view.addObject("id", id);
		return view;
	}
	
	/**
	 * 1、到客户修改页面(项目担保人明细使用)
	 * 2、根据参数ID区分是法人还是自然人跳转不同的详情页面
	 */
	@RequestMapping(value = "/toCstModifyForPrjGuarCreditPage.do", method = { RequestMethod.GET})
	public ModelAndView toCstModifyForPrjGuarCreditPage(HttpServletRequest request, HttpServletResponse response) {
		String id = request.getParameter("id");
		String url = "";
		ModelAndView view = new ModelAndView();
		try {
			CstBscInfoVO cstBscInfoVO = this.cstBscInfoService.selectById(Long.valueOf(id));
			if(null != cstBscInfoVO){
				if(CustomerConstant.CST_TYP_CD_NP.equals(cstBscInfoVO.getCstTypCd())){
					url = "customer/cstexternal/cstNpModifyForPrjGuarCredit";
					view.setViewName(url);
					this.getModifyCstNpViewParms(view);
				}else if(CustomerConstant.CST_TYP_CD_CORP.equals(cstBscInfoVO.getCstTypCd())){
					url = "customer/cstexternal/cstCorpModifyForPrjGuarCredit";
					view.setViewName(url);
					this.getModifyCstCorpViewParms(view);
				}
			}
		} catch (Exception e) {
			BaseLogUtils.error(logger, "toCstModifyForPrjGuarCreditPage", "跳转到客户修改页面错误. ID:" + id + " ERROR:" + e.getMessage(), CurrentThreadContext.getCurrentUserName());
		}
		BaseLogUtils.info(logger, "toCstModifyForPrjGuarCreditPage", "跳转到客户修改页面. ID:" + id, CurrentThreadContext.getCurrentUserName());
		view.addObject("id", id);
		return view;
	}
	
	/**
	 * 1、到客户修改页面(通用修改客户页面)
	 * 2、根据参数ID区分是法人还是自然人跳转不同的修改页面
	 */
	@RequestMapping(value = "/toCstModifyPage.do", method = { RequestMethod.GET})
	public ModelAndView toCstModifyPage(HttpServletRequest request, HttpServletResponse response) {
		String id = request.getParameter("id");
		String url = "";
		ModelAndView view = new ModelAndView();
		try {
			CstBscInfoVO cstBscInfoVO = this.cstBscInfoService.selectById(Long.valueOf(id));
			if(null != cstBscInfoVO){
				if(CustomerConstant.CST_TYP_CD_NP.equals(cstBscInfoVO.getCstTypCd())){
					url = "customer/cstexternal/cstNpModify";
					view.setViewName(url);
					this.getModifyCstNpViewParms(view);
				}else if(CustomerConstant.CST_TYP_CD_CORP.equals(cstBscInfoVO.getCstTypCd())){
					url = "customer/cstexternal/cstCorpModify";
					view.setViewName(url);
					this.getModifyCstCorpViewParms(view);
				}
			}
		} catch (Exception e) {
			BaseLogUtils.error(logger, "-", "异常", e);
			BaseLogUtils.error(logger, "toCstModifyPage", "跳转到客户修改页面错误. ID:" + id + " ERROR:" + e.getMessage(), CurrentThreadContext.getCurrentUserName());
		}
		BaseLogUtils.info(logger, "toCstModifyPage", "跳转到客户修改页面. ID:" + id, CurrentThreadContext.getCurrentUserName());
		view.addObject("id", id);
		return view;
	}
	
	/**
	 * 跳转到结清客户开票申请列表
	 */
	@RequestMapping(value = "/toClearPayPrjBillAppLyListPage.do", method = { RequestMethod.GET, RequestMethod.POST})
	public ModelAndView toClearPrjBillAppLyListPage(HttpServletRequest request, HttpServletResponse response) {
		String extPaySchMId = request.getParameter("extPaySchMId");
		String extPrjId = request.getParameter("extPrjId");
		String cstId = request.getParameter("cstId");
		String cstNm = request.getParameter("cstNm");
		String procInstId = request.getParameter("procInstId");
		ModelAndView view = new ModelAndView("customer/cstexternal/clearPayCstInvoiceApplyList");
		view.addObject("extPaySchMId", extPaySchMId);
		view.addObject("extPrjId", extPrjId);
		view.addObject("cstId", cstId);
		view.addObject("cstNm", cstNm);
		view.addObject("procInstId", procInstId);
		view.addObject("rlFlowCd", PropertiesCacheUtils.getProperty(fl.constant.facade.framework.constant.DictionaryConstant.CODE_PRJ_BILL_APPLY_RL_FLOW_CD_B));//默认结清流程
		BaseLogUtils.info(logger, "toClearPayPrjBillAppLyListPage", "跳转到结清发票申请列表页面.", CurrentThreadContext.getCurrentUserName());
		return view;
	}
	
	/**
	 * 到发票申请新增页面
	 */
	@RequestMapping(value = "/toClearPayInvoiceApplyAddPage.do", method = { RequestMethod.GET , RequestMethod.POST})
	public ModelAndView toClearPayInvoiceApplyAddPage(HttpServletRequest request, HttpServletResponse response) {
		String cstId = request.getParameter("cstId");
		String cstNm = request.getParameter("cstNm");
		//支付表ID 和 项目ID是在特殊场景使用的,非正常开票使用
		String extPaySchMId = request.getParameter("extPaySchMId");
		String extPrjId = request.getParameter("extPrjId");
		String procInstId = request.getParameter("procInstId");
		ModelAndView view = new ModelAndView("customer/cstexternal/clearPayCstInvoiceApplyAdd");
		if(StringUtils.isEmpty(extPaySchMId)){
			extPaySchMId = "";
		}
		if(StringUtils.isEmpty(extPrjId)){
			extPrjId = "";
		}
		if(StringUtils.isEmpty(cstId)){
			cstId = "";
		}
		if(StringUtils.isEmpty(cstNm)){
			cstNm = "";
		}
		view.addObject("cstId", cstId);
		view.addObject("cstNm", cstNm);
		view.addObject("extPaySchMId", extPaySchMId);
		view.addObject("extPrjId", extPrjId);
		view.addObject("procInstId", procInstId);
		view.addObject("orgCd", CurrentThreadContext.getCurrentOrgCd());//当前组织架构
		view.addObject("orgCdNm", CurrentThreadContext.getCurrentOrgDispNm());//当前组织架构
		view.addObject("prjBillStsCdList", new JSONArray());
		
		try {
            if (StringUtils.isNotEmpty(cstId)) {
                CstBscInfoVO cstBscInfoVO = this.cstBscInfoService.selectById(Long.valueOf(cstId));
                if (null != cstBscInfoVO) {
                    List<KeyValueVO> kvList = this.sysDictionaryService.getKvList(DictionaryConstant.CODE_GRP_CST_TYP_CD, CurrentThreadContext.getCurrentSysCd(), "0000");
                    for (KeyValueVO keyValueVO : kvList) {
                        if (keyValueVO.getKey().equals(cstBscInfoVO.getCstTypCd())) {
                            view.addObject("cstTypCd", cstBscInfoVO.getCstTypCd());
                            view.addObject("cstTypCdNm", keyValueVO.getValue());
                            break;
                        }
                    }
                }
            }
            if (StringUtils.isNotEmpty(extPrjId)) {
                PrjBscInfoVO prjBscInfoVO = this.prjBscInfoService.selectById(Long.valueOf(extPrjId));
                if (null != prjBscInfoVO) {
                    view.addObject("contNo", prjBscInfoVO.getLsCntNo());
                }
            }
            List<String> codeGrpCdList = new ArrayList<>();
			codeGrpCdList.add(DictionaryConstant.CODE_PRJ_BILL_TYP_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_SYS_YES_NO_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_CST_NP_BK_CD);
			//加入一个发票类型
			Map<String, List<KeyValueVO>> map = this.sysDictionaryService.getMultiKvList(CurrentThreadContext.getFlServiceSysCd(), CurrentThreadContext.getCurrentOrgCd(), codeGrpCdList);
			view.addObject("prjBillStsCdList", com.alibaba.fastjson.JSONArray.toJSON(map.get(DictionaryConstant.CODE_PRJ_BILL_TYP_CD)));
			List<KeyValueVO> ynList = map.get(DictionaryConstant.CODE_SYS_YES_NO_CD);
			if(CollectionUtils.isEmpty(ynList)){
				ynList = new ArrayList<>();
			}
			view.addObject("ynList", ynList);
			//开户银行
			List<KeyValueVO> bkCdList =  map.get(DictionaryConstant.CODE_GRP_CST_NP_BK_CD);
			if(CollectionUtils.isEmpty(bkCdList)){
				bkCdList = new ArrayList<>();
			}else{
				
			}
			
			view.addObject("selectBkCdList", bkCdList);
		} catch (Exception e) {
			BaseLogUtils.error(logger, "toClearPayInvoiceApplyAddPage", "获取数据字典组数据失败." + e.getMessage(), CurrentThreadContext.getCurrentUserName());
		}
		BaseLogUtils.info(logger, "toClearPayInvoiceApplyAddPage", "跳转到结清发票申请新增页面", CurrentThreadContext.getCurrentUserName());
		return view;
	}
	
	/**
	 * 到结清开票修改页面
	 */
	@RequestMapping(value = "/toClearPayInvoiceApplyModifyPage.do", method = { RequestMethod.GET, RequestMethod.POST })
	public ModelAndView toClearPayInvoiceApplyModifyPage(HttpServletRequest request, HttpServletResponse response) {
		String id = request.getParameter("id");
		ModelAndView view = new ModelAndView("customer/cstexternal/clearPayCstInvoiceApplyModify");
		view.addObject("id", id);
		view.addObject("prjBillStsCdList", new JSONArray());
		try {
			List<String> codeGrpCdList = new ArrayList<>();
			codeGrpCdList.add(DictionaryConstant.CODE_PRJ_BILL_TYP_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_SYS_YES_NO_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_CST_NP_BK_CD);
			//加入一个发票类型
			Map<String, List<KeyValueVO>> map = this.sysDictionaryService.getMultiKvList(CurrentThreadContext.getFlServiceSysCd(), CurrentThreadContext.getCurrentOrgCd(), codeGrpCdList);
			view.addObject("prjBillStsCdList", com.alibaba.fastjson.JSONArray.toJSON(map.get(DictionaryConstant.CODE_PRJ_BILL_TYP_CD)));
            List<KeyValueVO> feeTyps = this.prjBillApplyService.querySupportFeeTyp(PrjBillApplyConstant.BILL_WAY_CD_2);
            if (CollectionUtils.isEmpty(feeTyps)) {
                feeTyps = new ArrayList<>();
            }
            view.addObject("feeTyps", JSON.toJSON(feeTyps));
            List<KeyValueVO> ynList = map.get(DictionaryConstant.CODE_SYS_YES_NO_CD);
			if(CollectionUtils.isEmpty(ynList)){
				ynList = new ArrayList<>();
			}
			view.addObject("ynList", ynList);
			//开户银行
			List<KeyValueVO> bkCdList =  map.get(DictionaryConstant.CODE_GRP_CST_NP_BK_CD);
			if(CollectionUtils.isEmpty(bkCdList)){
				bkCdList = new ArrayList<>();
			}
			view.addObject("selectBkCdList", bkCdList);
		} catch (Exception e) {
			BaseLogUtils.error(logger, "toClearPayInvoiceApplyModifyPage", "获取数据字典组数据失败." + e.getMessage(), CurrentThreadContext.getCurrentUserName());
		}
		BaseLogUtils.info(logger, "toClearPayInvoiceApplyModifyPage", "跳转到修改页面.[id="+id+"]", CurrentThreadContext.getCurrentUserName());
		return view;
	}
	
	/**
	 * 跳转到结清客户开票申请列表-财务使用
	 */
	@RequestMapping(value = "/toClearPayCstInvoiceFinanceListPage.do", method = { RequestMethod.GET, RequestMethod.POST})
	public ModelAndView toClearPayCstInvoiceApplyFinanceList(HttpServletRequest request, HttpServletResponse response) {
		String extPaySchMId = request.getParameter("extPaySchMId");
		String extPrjId = request.getParameter("extPrjId");
		String cstId = request.getParameter("cstId");
		String cstNm = request.getParameter("cstNm");
		ModelAndView view = new ModelAndView("customer/cstexternal/clearPayCstInvoiceFinanceList");
		view.addObject("extPaySchMId", extPaySchMId);
		view.addObject("extPrjId", extPrjId);
		view.addObject("cstId", cstId);
		view.addObject("cstNm", cstNm);
		view.addObject("rlFlowCd", PropertiesCacheUtils.getProperty(fl.constant.facade.framework.constant.DictionaryConstant.CODE_PRJ_BILL_APPLY_RL_FLOW_CD_B));//默认结清流程
		BaseLogUtils.info(logger, "toClearPayCstInvoiceFinanceListPage", "跳转到结清发票申请列表页面-财务使用.", CurrentThreadContext.getCurrentUserName());
		return view;
	}
	
	/**
	 * 跳转到结清客户开票申请列表-详细
	 */
	@RequestMapping(value = "/toClearPayCstInvoiceDetailListPage.do", method = { RequestMethod.GET, RequestMethod.POST})
	public ModelAndView toClearPayCstInvoiceDetailListPage(HttpServletRequest request, HttpServletResponse response) {
		String extPaySchMId = request.getParameter("extPaySchMId");
		String extPrjId = request.getParameter("extPrjId");
		String cstId = request.getParameter("cstId");
		String cstNm = request.getParameter("cstNm");
		ModelAndView view = new ModelAndView("customer/cstexternal/clearPayCstInvoiceDetailList");
		view.addObject("extPaySchMId", extPaySchMId);
		view.addObject("extPrjId", extPrjId);
		view.addObject("cstId", cstId);
		view.addObject("cstNm", cstNm);
		view.addObject("rlFlowCd", PropertiesCacheUtils.getProperty(fl.constant.facade.framework.constant.DictionaryConstant.CODE_PRJ_BILL_APPLY_RL_FLOW_CD_B));//默认结清流程
		BaseLogUtils.info(logger, "toClearPayCstInvoiceDetailListPage", "跳转到结清发票申请列表页面-财务使用.", CurrentThreadContext.getCurrentUserName());
		return view;
	}
	
	/**************************************************************************************/

	/**
	 * 获取修改客户法人视图参数
	 * @param view
	 */
	private void getModifyCstCorpViewParms(ModelAndView view) {
		
		view.addObject("currentCstRlTypeForAdd", DictionaryConstant.CODE_GRP_CST_RL_TYP_CD_1);//新增的时候客户关系属性默认值
		// 证件类型
		List<KeyValueVO> certTypCdList = this.cstBscInfoService.searchCertTypCdList(CustomerConstant.CST_TYP_CD_CORP);
		view.addObject("searchSelectCertTypCdList", certTypCdList);
		//客户关系属性
		JSONArray cstRlTypCdJA = this.cstBscInfoService.searchCstRlTypArray();
		view.addObject("cstRlTypCdList", cstRlTypCdJA);
		try {
			List<String> codeGrpCdList = new ArrayList<>();
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_CORP_TYP_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_REG_CAP_UNT_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_SYS_YES_NO_CD);
			codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_BACK_PAY_TYP_CD);
			codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_PRJ_CTRL_CD);
			Map<String, List<KeyValueVO>> dicMap = this.sysDictionaryService.getMultiKvList(CurrentThreadContext.getFlServiceSysCd(), CurrentThreadContext.getCurrentOrgCd(), codeGrpCdList);
			view.addObject("searchSelectCorpTypCdList", dicMap.get(DictionaryConstant.CODE_GRP_CORP_TYP_CD));//企业性质
			view.addObject("searchSelectRegCapUntCdList", dicMap.get(DictionaryConstant.CODE_GRP_REG_CAP_UNT_CD));//万元 美元
			view.addObject("searchSelectPaidCapUntCdList", dicMap.get(DictionaryConstant.CODE_GRP_REG_CAP_UNT_CD));//万元 美元
			view.addObject("yNList", dicMap.get(DictionaryConstant.CODE_SYS_YES_NO_CD));///是否事业单位
			view.addObject("payTyplist", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_BACK_PAY_TYP_CD));//还款方式
			view.addObject("prjCtrlCdList", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_PRJ_CTRL_CD));//立项控制
		} catch (Exception e) {
			BaseLogUtils.error(logger, "toCstModifyForPrjGuarCreditPage", "获取基础DIC信息错误!" + e.getMessage());
		}
	}

	/**
	 * 获取修改客户自然人视图参数
	 * @param view
	 */
	private void getModifyCstNpViewParms(ModelAndView view) {
		try {
			//客户关系属性
			JSONArray cstRlTypCdJA = this.cstBscInfoService.searchCstRlTypArray();
			view.addObject("cstRlTypCdList", cstRlTypCdJA);
			//新增的时候客户关系属性默认值
			view.addObject("currentCstRlTypeForAdd", DictionaryConstant.CODE_GRP_CST_RL_TYP_CD_1);
			// 证件类型
			List<KeyValueVO> npCertTypCdList = this.cstBscInfoService.searchCertTypCdList(CustomerConstant.CST_TYP_CD_NP);
			view.addObject("searchSelectNPCertTypCdList", npCertTypCdList);
			List<String> codeGrpCdList = new ArrayList<>();
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_MAR_STS_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_GENDER_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_CST_OCP_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_CST_POS_CD);
			codeGrpCdList.add(DictionaryConstant.CODE_GRP_CST_TIT_CD);
			codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_BACK_PAY_TYP_CD);
			codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_HIGH_DG_CD);
			codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_LIV_CND_CD);
			//codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_ZX_CST_LVL_CD);
			codeGrpCdList.add(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_PRJ_CTRL_CD);
			Map<String, List<KeyValueVO>> dicMap = this.sysDictionaryService.getMultiKvList(CurrentThreadContext.getFlServiceSysCd(), CurrentThreadContext.getCurrentOrgCd(), codeGrpCdList);
			view.addObject("searchSelectMarStsCdList", dicMap.get(DictionaryConstant.CODE_GRP_MAR_STS_CD));// 婚姻状况
			view.addObject("searchSelectGenderCdList", dicMap.get(DictionaryConstant.CODE_GRP_GENDER_CD));// 性别状况
			view.addObject("searchSelectOcpCdlist", dicMap.get(DictionaryConstant.CODE_GRP_CST_OCP_CD));//职业
			view.addObject("searchSelectPosCdlist", dicMap.get(DictionaryConstant.CODE_GRP_CST_POS_CD));//职务
			view.addObject("searchSelectTitCdlist", dicMap.get(DictionaryConstant.CODE_GRP_CST_TIT_CD));//职称
			view.addObject("payTyplist", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_BACK_PAY_TYP_CD));//还款方式
			view.addObject("highDgCdList", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_HIGH_DG_CD));//最高学历
			view.addObject("livCndCdList", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_LIV_CND_CD));//居住状况
			//view.addObject("cstLvlCdList", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_ZX_CST_LVL_CD));//客户分级
			view.addObject("prjCtrlCdList", dicMap.get(fl.customer.facade.framework.constant.DictionaryConstant.CODE_GRP_PRJ_CTRL_CD));//立项控制
		} catch (Exception e) {
			BaseLogUtils.error(logger, "toCstModifyForPrjGuarCreditPage", "获取基础DIC信息错误!" + e.getMessage());
		}
	}
	
	
}
